<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
<title>Plugin Introduction</title>
<meta name="author" content="limodou, Dick Moores" />
<style type="text/css">

/*
:Author: David Goodger
:Contact: goodger@users.sourceforge.net
:Date: $Date: 2005-12-18 01:56:14 +0100 (Sun, 18 Dec 2005) $
:Revision: $Revision: 4224 $
:Copyright: This stylesheet has been placed in the public domain.

Default cascading style sheet for the HTML output of Docutils.

See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
customize this style sheet.
*/

/* used to remove borders from tables and images */
.borderless, table.borderless td, table.borderless th {
  border: 0 }

table.borderless td, table.borderless th {
  /* Override padding for "table.docutils td" with "! important".
     The right padding separates the table cells. */
  padding: 0 0.5em 0 0 ! important }

.first {
  /* Override more specific margin styles with "! important". */
  margin-top: 0 ! important }

.last, .with-subtitle {
  margin-bottom: 0 ! important }

.hidden {
  display: none }

a.toc-backref {
  text-decoration: none ;
  color: black }

blockquote.epigraph {
  margin: 2em 5em ; }

dl.docutils dd {
  margin-bottom: 0.5em }

/* Uncomment (and remove this text!) to get bold-faced definition list terms
dl.docutils dt {
  font-weight: bold }
*/

div.abstract {
  margin: 2em 5em }

div.abstract p.topic-title {
  font-weight: bold ;
  text-align: center }

div.admonition, div.attention, div.caution, div.danger, div.error,
div.hint, div.important, div.note, div.tip, div.warning {
  margin: 2em ;
  border: medium outset ;
  padding: 1em }

div.admonition p.admonition-title, div.hint p.admonition-title,
div.important p.admonition-title, div.note p.admonition-title,
div.tip p.admonition-title {
  font-weight: bold ;
  font-family: sans-serif }

div.attention p.admonition-title, div.caution p.admonition-title,
div.danger p.admonition-title, div.error p.admonition-title,
div.warning p.admonition-title {
  color: red ;
  font-weight: bold ;
  font-family: sans-serif }

/* Uncomment (and remove this text!) to get reduced vertical space in
   compound paragraphs.
div.compound .compound-first, div.compound .compound-middle {
  margin-bottom: 0.5em }

div.compound .compound-last, div.compound .compound-middle {
  margin-top: 0.5em }
*/

div.dedication {
  margin: 2em 5em ;
  text-align: center ;
  font-style: italic }

div.dedication p.topic-title {
  font-weight: bold ;
  font-style: normal }

div.figure {
  margin-left: 2em ;
  margin-right: 2em }

div.footer, div.header {
  clear: both;
  font-size: smaller }

div.line-block {
  display: block ;
  margin-top: 1em ;
  margin-bottom: 1em }

div.line-block div.line-block {
  margin-top: 0 ;
  margin-bottom: 0 ;
  margin-left: 1.5em }

div.sidebar {
  margin-left: 1em ;
  border: medium outset ;
  padding: 1em ;
  background-color: #ffffee ;
  width: 40% ;
  float: right ;
  clear: right }

div.sidebar p.rubric {
  font-family: sans-serif ;
  font-size: medium }

div.system-messages {
  margin: 5em }

div.system-messages h1 {
  color: red }

div.system-message {
  border: medium outset ;
  padding: 1em }

div.system-message p.system-message-title {
  color: red ;
  font-weight: bold }

div.topic {
  margin: 2em }

h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
  margin-top: 0.4em }

h1.title {
  text-align: center }

h2.subtitle {
  text-align: center }

hr.docutils {
  width: 75% }

img.align-left {
  clear: left }

img.align-right {
  clear: right }

ol.simple, ul.simple {
  margin-bottom: 1em }

ol.arabic {
  list-style: decimal }

ol.loweralpha {
  list-style: lower-alpha }

ol.upperalpha {
  list-style: upper-alpha }

ol.lowerroman {
  list-style: lower-roman }

ol.upperroman {
  list-style: upper-roman }

p.attribution {
  text-align: right ;
  margin-left: 50% }

p.caption {
  font-style: italic }

p.credits {
  font-style: italic ;
  font-size: smaller }

p.label {
  white-space: nowrap }

p.rubric {
  font-weight: bold ;
  font-size: larger ;
  color: maroon ;
  text-align: center }

p.sidebar-title {
  font-family: sans-serif ;
  font-weight: bold ;
  font-size: larger }

p.sidebar-subtitle {
  font-family: sans-serif ;
  font-weight: bold }

p.topic-title {
  font-weight: bold }

pre.address {
  margin-bottom: 0 ;
  margin-top: 0 ;
  font-family: serif ;
  font-size: 100% }

pre.literal-block, pre.doctest-block {
  margin-left: 2em ;
  margin-right: 2em ;
  background-color: #eeeeee }

span.classifier {
  font-family: sans-serif ;
  font-style: oblique }

span.classifier-delimiter {
  font-family: sans-serif ;
  font-weight: bold }

span.interpreted {
  font-family: sans-serif }

span.option {
  white-space: nowrap }

span.pre {
  white-space: pre }

span.problematic {
  color: red }

span.section-subtitle {
  /* font-size relative to parent (h1..h6 element) */
  font-size: 80% }

table.citation {
  border-left: solid 1px gray;
  margin-left: 1px }

table.docinfo {
  margin: 2em 4em }

table.docutils {
  margin-top: 0.5em ;
  margin-bottom: 0.5em }

table.footnote {
  border-left: solid 1px black;
  margin-left: 1px }

table.docutils td, table.docutils th,
table.docinfo td, table.docinfo th {
  padding-left: 0.5em ;
  padding-right: 0.5em ;
  vertical-align: top }

table.docutils th.field-name, table.docinfo th.docinfo-name {
  font-weight: bold ;
  text-align: left ;
  white-space: nowrap ;
  padding-left: 0 }

h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
  font-size: 100% }

tt.docutils {
  background-color: #eeeeee }

ul.auto-toc {
  list-style-type: none }

</style>
</head>
<body>
<div class="document" id="plugin-introduction">
<h1 class="title">Plugin Introduction</h1>
<table class="docinfo" frame="void" rules="none">
<col class="docinfo-name" />
<col class="docinfo-content" />
<tbody valign="top">
<tr><th class="docinfo-name">Author:</th>
<td>limodou, Dick Moores</td></tr>
<tr class="field"><th class="docinfo-name">Email:</th><td class="field-body"><a class="reference" href="mailto:limodou&#64;gmail.com">limodou&#64;gmail.com</a></td>
</tr>
<tr class="field"><th class="docinfo-name">Homepage:</th><td class="field-body"><a class="reference" href="http://code.google.com/p/ulipad/">http://code.google.com/p/ulipad/</a></td>
</tr>
<tr class="field"><th class="docinfo-name">BLOG:</th><td class="field-body"><a class="reference" href="http://www.donews.net/limodou">http://www.donews.net/limodou</a></td>
</tr>
<tr class="field"><th class="docinfo-name">Copyleft:</th><td class="field-body">GPL</td>
</tr>
</tbody>
</table>
<div class="contents topic">
<p class="topic-title first"><a id="content" name="content">Content</a></p>
<ul class="auto-toc simple">
<li><a class="reference" href="#introduction" id="id1" name="id1">1&nbsp;&nbsp;&nbsp;Introduction</a><ul class="auto-toc">
<li><a class="reference" href="#blogedit-deprecated" id="id2" name="id2">1.1&nbsp;&nbsp;&nbsp;BlogEdit (Deprecated)</a></li>
<li><a class="reference" href="#closeother" id="id3" name="id3">1.2&nbsp;&nbsp;&nbsp;closeother</a></li>
<li><a class="reference" href="#djangoproj" id="id4" name="id4">1.3&nbsp;&nbsp;&nbsp;djangoproj</a></li>
<li><a class="reference" href="#docbook" id="id5" name="id5">1.4&nbsp;&nbsp;&nbsp;docbook</a></li>
<li><a class="reference" href="#dosprompt-windows-platform" id="id6" name="id6">1.5&nbsp;&nbsp;&nbsp;dosprompt (Windows platform)</a></li>
<li><a class="reference" href="#fortran" id="id7" name="id7">1.6&nbsp;&nbsp;&nbsp;fortran</a></li>
<li><a class="reference" href="#jquery" id="id8" name="id8">1.7&nbsp;&nbsp;&nbsp;jQuery</a></li>
<li><a class="reference" href="#outline-under-development" id="id9" name="id9">1.8&nbsp;&nbsp;&nbsp;outline (Under development)</a></li>
<li><a class="reference" href="#pairprog" id="id10" name="id10">1.9&nbsp;&nbsp;&nbsp;pairprog</a></li>
<li><a class="reference" href="#pymusic" id="id11" name="id11">1.10&nbsp;&nbsp;&nbsp;pymusic</a></li>
<li><a class="reference" href="#tts-plugin-windows-platform" id="id12" name="id12">1.11&nbsp;&nbsp;&nbsp;tts_plugin (Windows platform)</a></li>
<li><a class="reference" href="#rssreader-deprecated" id="id13" name="id13">1.12&nbsp;&nbsp;&nbsp;rssreader (Deprecated)</a></li>
<li><a class="reference" href="#ruby" id="id14" name="id14">1.13&nbsp;&nbsp;&nbsp;ruby</a></li>
<li><a class="reference" href="#ruler" id="id15" name="id15">1.14&nbsp;&nbsp;&nbsp;ruler</a></li>
<li><a class="reference" href="#showerror" id="id16" name="id16">1.15&nbsp;&nbsp;&nbsp;showerror</a></li>
<li><a class="reference" href="#spellcheck" id="id17" name="id17">1.16&nbsp;&nbsp;&nbsp;spellcheck</a></li>
<li><a class="reference" href="#wizard" id="id18" name="id18">1.17&nbsp;&nbsp;&nbsp;wizard</a></li>
<li><a class="reference" href="#mako-plugin" id="id19" name="id19">1.18&nbsp;&nbsp;&nbsp;mako_plugin</a></li>
<li><a class="reference" href="#batchfilenames-plugin" id="id20" name="id20">1.19&nbsp;&nbsp;&nbsp;batchfilenames_plugin</a></li>
<li><a class="reference" href="#svn-plugin" id="id21" name="id21">1.20&nbsp;&nbsp;&nbsp;svn_plugin</a></li>
<li><a class="reference" href="#emacskey" id="id22" name="id22">1.21&nbsp;&nbsp;&nbsp;emacskey</a></li>
<li><a class="reference" href="#winpdb-discarded" id="id23" name="id23">1.22&nbsp;&nbsp;&nbsp;winpdb (Discarded)</a></li>
<li><a class="reference" href="#pylint-plugin" id="id24" name="id24">1.23&nbsp;&nbsp;&nbsp;pylint_plugin</a><ul class="auto-toc">
<li><a class="reference" href="#how-to-install-it" id="id25" name="id25">1.23.1&nbsp;&nbsp;&nbsp;How to install it?</a></li>
<li><a class="reference" href="#how-to-run-it" id="id26" name="id26">1.23.2&nbsp;&nbsp;&nbsp;How to run it?</a></li>
</ul>
</li>
<li><a class="reference" href="#web2py-plugin" id="id27" name="id27">1.24&nbsp;&nbsp;&nbsp;web2py_plugin</a></li>
<li><a class="reference" href="#canvas-test-plugin" id="id28" name="id28">1.25&nbsp;&nbsp;&nbsp;canvas_test_plugin</a><ul class="auto-toc">
<li><a class="reference" href="#how-to-use-it" id="id29" name="id29">1.25.1&nbsp;&nbsp;&nbsp;How to use it?</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="section">
<h1><a class="toc-backref" href="#id1" id="introduction" name="introduction">1&nbsp;&nbsp;&nbsp;Introduction</a></h1>
<div class="section">
<h2><a class="toc-backref" href="#id2" id="blogedit-deprecated" name="blogedit-deprecated">1.1&nbsp;&nbsp;&nbsp;BlogEdit (Deprecated)</a></h2>
<p>Can be used to write blogs, and communicate with a server via xml-rpc.
Requires that the server supports blogapi and metawebblogapi. This plugin
needs more testing.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id3" id="closeother" name="closeother">1.2&nbsp;&nbsp;&nbsp;closeother</a></h2>
<p>Close others documents except current one. Close all other documents
except the current one. Installation will add menu items to the File menu
and to the document tab context menu.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id4" id="djangoproj" name="djangoproj">1.3&nbsp;&nbsp;&nbsp;djangoproj</a></h2>
<p>Django&lt;<a class="reference" href="http://www.djangoproject.com/">http://www.djangoproject.com/</a>&gt; support. Django is a web framework.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id5" id="docbook" name="docbook">1.4&nbsp;&nbsp;&nbsp;docbook</a></h2>
<p>Can be used for writing docbook documents.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id6" id="dosprompt-windows-platform" name="dosprompt-windows-platform">1.5&nbsp;&nbsp;&nbsp;dosprompt (Windows platform)</a></h2>
<p>Open DOS window in bottom pane.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id7" id="fortran" name="fortran">1.6&nbsp;&nbsp;&nbsp;fortran</a></h2>
<p>Add fortran language syntax highlight support.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id8" id="jquery" name="jquery">1.7&nbsp;&nbsp;&nbsp;jQuery</a></h2>
<p>jQuery support.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id9" id="outline-under-development" name="outline-under-development">1.8&nbsp;&nbsp;&nbsp;outline (Under development)</a></h2>
<p>Like leo&lt;<a class="reference" href="http://webpages.charter.net/edreamleo/front.html">http://webpages.charter.net/edreamleo/front.html</a>&gt;.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id10" id="pairprog" name="pairprog">1.9&nbsp;&nbsp;&nbsp;pairprog</a></h2>
<p>You can use it on collaborative programming.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id11" id="pymusic" name="pymusic">1.10&nbsp;&nbsp;&nbsp;pymusic</a></h2>
<p>Play mp3 music.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id12" id="tts-plugin-windows-platform" name="tts-plugin-windows-platform">1.11&nbsp;&nbsp;&nbsp;tts_plugin (Windows platform)</a></h2>
<p>Read current document or selected text via TTS&lt;<a class="reference" href="http://en.wikipedia.org/wiki/Speech_synthesis">http://en.wikipedia.org/wiki/Speech_synthesis</a>&gt;.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id13" id="rssreader-deprecated" name="rssreader-deprecated">1.12&nbsp;&nbsp;&nbsp;rssreader (Deprecated)</a></h2>
<p>A test rss reader plugin.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id14" id="ruby" name="ruby">1.13&nbsp;&nbsp;&nbsp;ruby</a></h2>
<p>Ruby support.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id15" id="ruler" name="ruler">1.14&nbsp;&nbsp;&nbsp;ruler</a></h2>
<p>Add ruler for document.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id16" id="showerror" name="showerror">1.15&nbsp;&nbsp;&nbsp;showerror</a></h2>
<p>Add some menu items related to error.txt and debug.txt of UliPad.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id17" id="spellcheck" name="spellcheck">1.16&nbsp;&nbsp;&nbsp;spellcheck</a></h2>
<p>Spell check for current document.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id18" id="wizard" name="wizard">1.17&nbsp;&nbsp;&nbsp;wizard</a></h2>
<p>Wizard framework.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id19" id="mako-plugin" name="mako-plugin">1.18&nbsp;&nbsp;&nbsp;mako_plugin</a></h2>
<p>mako&lt;<a class="reference" href="http://www.makotemplates.org/">http://www.makotemplates.org/</a>&gt; is a python template system.
This plugin can provide mako project name, and also support .mko file suffix.
When you open a .mko file, this plugin also can support simple syntax highlight.
And also support some input assistant, for example: key words prompt, etc.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id20" id="batchfilenames-plugin" name="batchfilenames-plugin">1.19&nbsp;&nbsp;&nbsp;batchfilenames_plugin</a></h2>
<p>This plugin can be used to rename batch filenames. It supports regular find and
replace, simple template creation.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id21" id="svn-plugin" name="svn-plugin">1.20&nbsp;&nbsp;&nbsp;svn_plugin</a></h2>
<p>Subversion version control support. You should install pysvn module first.
You can find pysvn at <a class="reference" href="http://pysvn.tigris.org/">http://pysvn.tigris.org/</a></p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id22" id="emacskey" name="emacskey">1.21&nbsp;&nbsp;&nbsp;emacskey</a></h2>
<p>Emacs keybinding.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id23" id="winpdb-discarded" name="winpdb-discarded">1.22&nbsp;&nbsp;&nbsp;winpdb (Discarded)</a></h2>
<p>It has been merged into UliPad. So if you found this plugin displayed in plugin
manager dialog, maybe you are using the old version or winpdb plugin folder is
still exists in plugins folder. You should upgrade to the latest version, and
check whether the plugins/winpdb is still exists, if it's existed, just remove
it.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id24" id="pylint-plugin" name="pylint-plugin">1.23&nbsp;&nbsp;&nbsp;pylint_plugin</a></h2>
<p>Using pylint module to check the syntax and convention of current python program.</p>
<div class="section">
<h3><a class="toc-backref" href="#id25" id="how-to-install-it" name="how-to-install-it">1.23.1&nbsp;&nbsp;&nbsp;How to install it?</a></h3>
<ol class="arabic simple">
<li>Install three package</li>
</ol>
<blockquote>
<ul class="simple">
<li>pylint <a class="reference" href="http://www.logilab.org/project/pylint">http://www.logilab.org/project/pylint</a></li>
<li>logilab-common <a class="reference" href="http://www.logilab.org/project/logilab-common">http://www.logilab.org/project/logilab-common</a></li>
<li>logilab-astng <a class="reference" href="http://www.logilab.org/project/logilab-astng">http://www.logilab.org/project/logilab-astng</a></li>
</ul>
</blockquote>
<ol class="arabic simple" start="2">
<li>Check the pylint_plugin in [Tool]-&gt;[Plugin Manager...]</li>
<li>Restart the UliPad</li>
</ol>
</div>
<div class="section">
<h3><a class="toc-backref" href="#id26" id="how-to-run-it" name="how-to-run-it">1.23.2&nbsp;&nbsp;&nbsp;How to run it?</a></h3>
<p>[Tool]-&gt;[Pylint]</p>
<p>Then it'll automatically check current python program syntax and convention.
You'll see a panel appearing in the bottom pane.
The attatchment is the interface. If you double click on one item,
then the caret will automatically jump to the line.</p>
</div>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id27" id="web2py-plugin" name="web2py-plugin">1.24&nbsp;&nbsp;&nbsp;web2py_plugin</a></h2>
<p>Supply web2py shell menu. You should set a directory as web2py project first,
then when you select a app folder in <tt class="docutils literal"><span class="pre">applications</span></tt> folder, on the context
menu there will be a <tt class="docutils literal"><span class="pre">Start</span> <span class="pre">web2py</span> <span class="pre">Shell</span></tt>, so you can start a shell window
to test current selected app of web2py.</p>
</div>
<div class="section">
<h2><a class="toc-backref" href="#id28" id="canvas-test-plugin" name="canvas-test-plugin">1.25&nbsp;&nbsp;&nbsp;canvas_test_plugin</a></h2>
<p>You can write graphic drawing code directly, and then see the result.</p>
<div class="section">
<h3><a class="toc-backref" href="#id29" id="how-to-use-it" name="how-to-use-it">1.25.1&nbsp;&nbsp;&nbsp;How to use it?</a></h3>
<ol class="arabic">
<li><p class="first">Check casvas_test_plugin and restart UliPad</p>
</li>
<li><p class="first">Run [Tool]-&gt;[Canvas Test]</p>
</li>
<li><p class="first">In Canvas Test window, write down graphic API. You'll see there already
has two lines:</p>
<pre class="literal-block">
import wx
dc = wx.PaintDC(self)
</pre>
<p>these lines are used to enable code completion support.</p>
</li>
<li><p class="first">Write down your code after dc = wx.PaintDC(self)</p>
</li>
<li><p class="first">Then click the refresh button</p>
</li>
</ol>
<p><a class="reference" href="index.htm">[Return]</a></p>
</div>
</div>
</div>
</div>
</body>
</html>
